package models

type Enum触发源 int

const (
	普通  = 255 //不触发
	NPC = 1
	等级  = 2
	怪物  = 3
	任务  = 4
)

func (z *StructNPC菜单) TableName() string {
	return "NPC菜单"
}

type StructNPC菜单 struct {
	Id      int32              `xorm:"autoincr"`
	NpcID   int32              `xorm:"'npcid'"`
	V排序     uint16             `xorm:"'排序'"`
	V完成任务标志 map[int16]int32    `xorm:"'完成任务标志'"` //哪些任务完成才可以显示
	V排除任务标志 map[int16]int32    `xorm:"'排除任务标志'"` //哪些任务完成,这里就不显示
	V消耗物品   map[string]float32 `xorm:"'消耗物品'"`   //第一个INT为物品名称,第二个为物品数量
	V菜单显示内容 string             `xorm:"'菜单显示内容'"`
	V脚本内容   string             `xorm:"'脚本内容'"`
	V输出信息   string             `xorm:"'输出信息'"`
}

func (z *Struct任务简介) TableName() string {
	return "任务简介"
}

type Struct任务简介 struct {
	Id    int32  //任务ID
	V步骤   int32  `xorm:"步骤"`   //当前执行到哪一步了
	V显示菜单 string `xorm:"显示菜单"` //出现在NPC的菜单显示中
	V列表标题 string `xorm:"列表标题"` //在任务表中左边的标题
	V简要标题 string `xorm:"简要标题"` //在任务列表右上的标题
	V详细内容 string `xorm:"详细内容"` //在右下显示的任务详细信息
}

func (z *StructNpc商店) TableName() string {
	return "Npc商店"
}

type StructNpc商店 struct {
	Id     int32
	V出售1标题 string  `xorm:"出售1标题"` //Potion:药水  etc:道具
	V出售2标题 string  `xorm:"出售2标题"`
	V出售3标题 string  `xorm:"出售3标题"`
	V出售1清单 string  `xorm:"出售1清单"` //逗号分隔的物品ID
	V出售2清单 string  `xorm:"出售2清单"` //逗号分隔的物品ID
	V出售3清单 string  `xorm:"出售3清单"` //逗号分隔的物品ID
	V税率    float32 `xorm:"税率"`    //交的税是给城主用的
	V调控    float32 `xorm:"调控"`
}
